@echo off

rem 设置文件路径
set LYX_FILE="%~dp0temp.lyx"
set TEX_FILE="%~dp0temp.tex"
set TYPST_FILE="%~dp0temp.typ"

rem 检查LyX文件是否存在
if not exist %LYX_FILE% (
    echo 错误: LyX文件不存在!
    pause
    exit /b 1
)

rem 查找LyX可执行文件路径
set LYX_EXE=
if exist "C:\Program Files\LyX 2.4\bin\LyX.exe" (
    set LYX_EXE="C:\Program Files\LyX 2.4\bin\LyX.exe"
) else if exist "%LOCALAPPDATA%\Programs\LyX 2.4\bin\LyX.exe" (
    set LYX_EXE="%LOCALAPPDATA%\Programs\LyX 2.4\bin\LyX.exe"
) else if exist "%PROGRAMFILES%\LyX 2.4\bin\LyX.exe" (
    set LYX_EXE="%PROGRAMFILES%\LyX 2.4\bin\LyX.exe"
) else (
    echo 错误: 未找到LyX可执行文件!
    pause
    exit /b 1
)

rem 使用LyX将文档转换为TeX
echo 正在使用LyX将文档转换为TeX...
%LYX_EXE% -e latex %LYX_FILE%

rem 检查TeX文件是否生成成功
if not exist %TEX_FILE% (
    echo 错误: 转换为TeX文件失败!
    pause
    exit /b 1
)

rem 使用pandoc将TeX转换为Typst
 echo 正在使用pandoc将TeX转换为Typst...
 "C:\Program Files\Pandoc\pandoc.exe" -o %TYPST_FILE% %TEX_FILE%

rem 检查Typst文件是否生成成功
if not exist %TYPST_FILE% (
    echo 错误: 转换为Typst文件失败!
    pause
    exit /b 1
)

rem 调用Python脚本处理生成的Typst文件
 echo 正在使用Python脚本处理Typst文件...
 python "%~dp0process_typ_file.py"

 echo 转换完成!
 echo LyX文件: %LYX_FILE%
 echo TeX文件: %TEX_FILE%
 echo Typst文件: %TYPST_FILE%

pause